package com.demo.java.OD301_350.OD318;

import java.util.*;

/**
 * @author bug菌
 * @Source 公众号：猿圈奇妙屋
 * @des： 【阿里巴巴找黄金宝箱(3)(B卷)】问题
 * @url： https://blog.csdn.net/weixin_43970743/article/details/146106524
 */
public class OdMain {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        // 读取输入的字符串并按逗号分割得到字符串数组
        String[] numStrings = sc.nextLine().split(",");
        int[] nums = new int[numStrings.length];
        // 将字符串数组转换为整数数组
        for (int i = 0; i < numStrings.length; i++) {
            nums[i] = Integer.parseInt(numStrings[i]);
        }

        // 获取第二行输入的最大距离n
        int n = sc.nextInt();

        // 用Map记录每个数字的上次出现的索引
        Map<Integer, Integer> lastIndexMap = new HashMap<>();
        int res = -1;

        // 遍历数组，检查每个数字是否满足条件
        for (int i = 0; i < nums.length; i++) {
            int currentNum = nums[i];

            // 如果数字已经出现过，并且当前位置与上次出现的距离小于等于n
            if (lastIndexMap.containsKey(currentNum) && i - lastIndexMap.get(currentNum) <= n) {
                // 如果满足条件，返回上次出现的索引
                res = lastIndexMap.get(currentNum);
                break;
            }

            // 更新数字出现的位置
            lastIndexMap.put(currentNum, i);
        }

        // 输出结果
        System.out.println(res);
    }
}